Added a config plugin that makes this module compatible with the Expo managed workflow#20
Added a config plugin that makes this module compatible with the Expo managed workflow#20JanSneeuw wants to merge 5 commits intosusonthapa:mainfrom
Conversation
|
Can you enlighten me on the benefit of using the Expo Config Plugin in this project? This project already requires a lot of native code setup. |
|
Hi, I don't know if you are familiar with the Expo managed workflow, but the idea is that a developer can create an app without ever touching any native code. However one of the shortcomings is that you cannot change configurations such as the AndroidManifest or the Info.plist. As you said your project requires a lot of native code setup, and that's exactly what this config plugin tackles. An Expo config plugin takes care of the native setup part automatically, meaning an Expo user wouldn't have to eject out of his managed workflow. If you'd like to read more about it, have a look at the expo documentation. If you have any more questions, let me know! :) |
|
I did go through the documentation of Expo plugins. One thing that I don't understand is the purpose of the plugin. Reading the documentation it looks like this plugin is going to add the Please let me know if I misunderstood it. |
|
You are indeed correct, since the CarService is already defined in the library manifest it doesn't need to be in the plugin. I've removed it in case you'd still want to merge the plugin into the library. And indeed the only benefit is the addition of the |
|
I will look into that when I get some time. I'm keeping this PR open just in case those attributes can't be moved into the library itself. |
I've added an expo config plugin, making this module compatible with the expo managed workflow. This does not mean it can be ran within expo go, since it still needs the native code, however you can create an expo dev-client to mimic expo go.
To use it, all a user has to do is add the following in their app.json:
After this, they can use the module through javascript, just like in react native bare and the expo ejected workflow.